/** layui-v1.0.7 LGPL License By http://www.layui.com */
;!function(e) {
	"use strict";
	var t = function() {
		this.v = "1.0.7"
	};
	t.fn = t.prototype;
	var n = document,
		o = t.fn.cache = {},
		i = function() {
			var e = n.scripts,
				t = e[e.length - 1].src;
			return t.substring(0, t.lastIndexOf("/") + 1)
		}(),
		r = function(t) {
			e.console && console.error && console.error("Layui hint: " + t)
		},
		u = "undefined" != typeof opera && "[object Opera]" === opera.toString(),
		l = {
			layer : "modules/layer",
			laydate : "modules/laydate",
			laypage : "modules/laypage",
			laytpl : "modules/laytpl",
			layim : "modules/layim",
			layedit : "modules/layedit",
			form : "modules/form",
			upload : "modules/upload",
			tree : "modules/tree",
			slide : "modules/slide",
			table : "modules/table",
			element : "modules/element",
			util : "modules/util",
			flow : "modules/flow",
			code : "modules/code",
			single : "modules/single",
			mobile : "modules/mobile",
			jquery : "lib/jquery",
			"layui.mod" : "dest/layui.mod"
		};
	o.modules = {}, o.status = {}, o.timeout = 10, o.event = {}, t.fn.define = function(e, t) {
		var n = this,
			i = "function" == typeof e,
			r = function() {
				return "function" == typeof t && t(function(e, t) {
						layui[e] = t, o.status[e] = !0
					}), this
			};
		return i && (t = e, e = []), layui["layui.all"] ? r.call(n) : (n.use(e, r), n)
	}, t.fn.use = function(e, t, a) {
		function s(e, t) {
			var n = "PLaySTATION 3" === navigator.platform ? /^complete$/ : /^(complete|loaded)$/;
			("load" === e.type || n.test((e.currentTarget || e.srcElement).readyState)) && (o.modules[m] = t, y.removeChild(v), function i() {
				return ++p > 1e3 * o.timeout / 4 ? r(m + " is not a valid module") : void (o.status[m] ? c() : setTimeout(i, 4))
			}())
		}
		function c() {
			a.push(layui[m]), e.length > 1 ? f.use(e.slice(1), t, a) : "function" == typeof t && t.apply(layui, a)
		}
		var f = this,
			d = o.dir = o.dir ? o.dir : i,
			y = n.getElementsByTagName("head")[0];
		e = "string" == typeof e ? [ e ] : e, window.jQuery && jQuery.fn.on && (f.each(e, function(t, n) {
			"jquery" === n && e.splice(t, 1)
		}), layui.jquery = jQuery);
		var m = e[0],
			p = 0;
		if (a = a || [], o.host = o.host || (d.match(/\/\/([\s\S]+?)\//) || [ "//" + location.host + "/" ])[0], 0 === e.length || layui["layui.all"] && l[m]) return "function" == typeof t && t.apply(layui, a), f;
		var v = n.createElement("script"),
			h = (l[m] ? d + "lay/" : o.base || "") + (f.modules[m] || m) + ".js";
		return v.async = !0, v.charset = "utf-8", v.src = h + function() {
				var e = o.version === !0 ? o.v || (new Date).getTime() : o.version || "";
				return e ? "?v=" + e : ""
			}(), o.modules[m] ? !function g() {
				return ++p > 1e3 * o.timeout / 4 ? r(m + " is not a valid module") : void ("string" == typeof o.modules[m] && o.status[m] ? c() : setTimeout(g, 4))
			}() : (y.appendChild(v), !v.attachEvent || v.attachEvent.toString && v.attachEvent.toString().indexOf("[native code") < 0 || u ? v.addEventListener("load", function(e) {
				s(e, h)
			}, !1) : v.attachEvent("onreadystatechange", function(e) {
				s(e, h)
			})), o.modules[m] = h, f
	}, t.fn.getStyle = function(t, n) {
		var o = t.currentStyle ? t.currentStyle : e.getComputedStyle(t, null);
		return o[o.getPropertyValue ? "getPropertyValue" : "getAttribute"](n)
	}, t.fn.link = function(e, t, i) {
		var u = this,
			l = n.createElement("link"),
			a = n.getElementsByTagName("head")[0];
		"string" == typeof t && (i = t);
		var s = (i || e).replace(/\.|\//g, ""),
			c = l.id = "layuicss-" + s,
			f = 0;
		l.rel = "stylesheet", l.href = e + (o.debug ? "?v=" + (new Date).getTime() : ""), l.media = "all", n.getElementById(c) || a.appendChild(l), "function" == typeof t && !function d() {
			return ++f > 1e3 * o.timeout / 100 ? r(e + " timeout") : void (1989 === parseInt(u.getStyle(n.getElementById(c), "width")) ? function() {
				t()
			}() : setTimeout(d, 100))
		}()
	}, t.fn.addcss = function(e, t, n) {
		layui.link(o.dir + "css/" + e, t, n)
	}, t.fn.img = function(e, t, n) {
		var o = new Image;
		return o.src = e, o.complete ? t(o) : (o.onload = function() {
				o.onload = null, t(o)
			}, void (o.onerror = function(e) {
				o.onerror = null, n(e)
			}))
	}, t.fn.config = function(e) {
		e = e || {};
		for (var t in e) o[t] = e[t];
		return this
	}, t.fn.modules = function() {
		var e = {};
		for (var t in l) e[t] = l[t];
		return e
	}(), t.fn.extend = function(e) {
		var t = this;
		e = e || {};
		for (var n in e) t[n] || t.modules[n] ? r("模块名 " + n + " 已被占用") : t.modules[n] = e[n];
		return t
	}, t.fn.router = function(e) {
		for (var t, n = (e || location.hash).replace(/^#/, "").split("/") || [], o = {
					dir : []
				}, i = 0; i < n.length; i++) t = n[i].split("="), /^\w+=/.test(n[i]) ? function() {
				"dir" !== t[0] && (o[t[0]] = t[1])
			}() : o.dir.push(n[i]), t = null;
		return o
	}, t.fn.data = function(t, n) {
		if (t = t || "layui", e.JSON && e.JSON.parse) {
			if (null === n) return delete localStorage[t];
			n = "object" == typeof n ? n : {
				key : n
			};try {
				var o = JSON.parse(localStorage[t])
			} catch (i) {
				var o = {}
			} return n.value && (o[n.key] = n.value), n.remove &&
				delete o[n.key]
				, localStorage[t] = JSON.stringify(o), n.key ? o[n.key] : o
		}
	}, t.fn.device = function(t) {
		var n = navigator.userAgent.toLowerCase(),
			o = function(e) {
				var t = new RegExp(e + "/([^\\s\\_\\-]+)");
				return e = (n.match(t) || [])[1], e || !1
			},
			i = {
				os : function() {
					return /windows/.test(n) ? "windows" : /linux/.test(n) ? "linux" : /iphone|ipod|ipad|ios/.test(n) ? "ios" : void 0
				}(),
				ie : function() {
					return !!(e.ActiveXObject || "ActiveXObject" in e) && ((n.match(/msie\s(\d+)/) || [])[1] || "11")
				}(),
				weixin : o("micromessenger")
			};
		return t && !i[t] && (i[t] = o(t)), i.android = /android/.test(n), i.ios = "ios" === i.os, i
	}, t.fn.hint = function() {
		return {
			error : r
		}
	}, t.fn.each = function(e, t) {
		var n,
			o = this;
		if ("function" != typeof t) return o;
		if (e = e || [], e.constructor === Object) {
			for (n in e)
				if (t.call(e[n], n, e[n])) break
		} else
			for (n = 0; n < e.length && !t.call(e[n], n, e[n]); n++)
				;
		return o
	}, t.fn.stope = function(t) {
		t = t || e.event, t.stopPropagation ? t.stopPropagation() : t.cancelBubble = !0
	}, t.fn.onevent = function(e, t, n) {
		return "string" != typeof e || "function" != typeof n ? this : (o.event[e + "." + t] = [ n ], this)
	}, t.fn.event = function(e, t, n) {
		var i = this,
			r = null,
			u = t.match(/\(.*\)$/) || [],
			l = (t = e + "." + t).replace(u, ""),
			a = function(e, t) {
				var o = t && t.call(i, n);
				o === !1 && null === r && (r = !1)
			};
		return layui.each(o.event[l], a), u[0] && layui.each(o.event[t], a), r
	}, e.layui = new t
}(window);